The invention relates generally to video graphics processing and more particularly to a method and apparatus for controlling mip map transitions in a three-dimensional video graphics system.
Computers are used in many applications. As computing systems continue to evolve, the graphical display requirements of the systems become more demanding. This is especially true in applications where detailed three-dimensional graphical displays must be updated quickly. One example of such an application is a computer game where movement and modification of background images may place great demands on the processing power of the computing system.
In order to display some screen images, detailed textures are stored in memory. These textures are then filtered and adapted to overlay or map to structures, or graphics primitives, for display. An example is a brick pattern that would be mapped onto a wall structure, and if the wall is extending into the distance, the texture will be mapped in such a way as to show perspective.
In order to facilitate the use of textures, mip maps, or multiple, scaled versions of a texture are often generated for use in texturing operations. Typically, a number of mip maps corresponding to a single texture image are often used, where successive mip maps include less detail. Thus, as a primitive or other shape on the screen fades into the distance, the mip map used to perform the texturing operations with respect to that shape can be a less detailed version of the image represented in the group of mip maps.
Higher display resolutions include more pixels-per-area than lower display resolutions. In higher display resolutions, the level of detail that can be represented for a particular image is increased as more pixels are available to render the image. As such, more detailed mip maps are often employed for texturing operations on higher resolution displays. The trade-off for use of the higher detailed mip maps is in the additional processing power required to utilize these mip maps to texture various objects on the display.
In order to reduce the processing requirements for texturing operations, some prior art systems have eliminated the most detailed mip map created for a particular texturing image. As such, less detailed mip maps are used to perform the texturing operations for the application, and the overall speed of execution of the application is increased. One drawback to this approach is that the most detailed mip map is forfeited entirely, and from no perspective can a user view the full detail of the image represented by the mip maps.
In other prior art solutions that attempt to reduce the amount of processing bandwidth required to utilize a set of mip maps, a fixed level of detail bias setting is used to select between the various mip maps based on the texel-to-pixel ratio for each mip map. The texel-per-pixel ratio indicates the number of texels within a mip map that will map to a particular pixel within the primitive being textured. The level of detail bias is used to select between the available mip maps based on the texel-per-pixel ratio. A higher level of detail bias will cause a more detailed mip map to be used more often, whereas a lower level of detail bias will cause smaller, less detailed mip maps to be used more often. As stated earlier, the use of the larger more detailed mip maps increases texture detail, but decreases overall performance of the application as the processing requirements for the texturing operations escalate. As such, the level of detail bias is often fixed in prior art systems such that less detailed mip maps are selected more often for texturing operations, thus increasing performance at the cost of texture detail.
The static level of detail bias employed in prior art systems often results in the most detailed mip map for particular texture image never being utilized. In the prior art solutions that eliminate the more detailed mip maps, performance is maintained at higher resolutions, but at lower resolutions the detail of the textures is often compromised unnecessarily.
Therefore, a need exists for a method and apparatus for controlling the selection, and transition between, mip maps in a video graphics system that maintains system performance without unnecessarily compromising mip map image detail.